Link by Attribute - Target to Source

Anybody used link by attribute and used the "Target to source" link direction, as opposed to the conventional "Source to target" option? I have used this on some modules lately and the links tend to disappear. I can see the in-link indicators and actually see what modules and absolute numbers the link comes from. However, when the source module is opened, or the object properties of the target object are accessed, the indicators disappear. Also, when the source module is opened, there are no out-link indicators...regardless if the target module has been opened or not.

I have been fighting with Telelogic/IBM since early February trying to get my current links restored. We made the links, they were modified and objects created and deleted, then we found out that we were actually not seeing all the links. All we want to do is capture the link information in a spreadsheet so that we can relink the existing links. IBM says that it is impossible and we have to start over.

Has anybody experienced this issue before? Is there a better fix than starting over? DOORS can show my the source module and absolute number via the in-link indicator...can this be reported via DXL?

Thanks in advance if you can help!

Corey
the@dmin - Mon Mar 30 16:04:13 EDT 2009

Re: Link by Attribute - Target to Source
SystemAdmin - Tue Mar 31 01:41:10 EDT 2009

Gosh! A bit of deja vu here - I recall this being a problem way back in version 5.0 or in one of the many 5.x variants after that. What version are you using?


Paul Miller
Specification Practices Specialist
EuroCyber
Melbourne, Australia

Re: Link by Attribute - Target to Source
kabr - Tue Mar 31 04:06:25 EDT 2009

This is exactly the problem that we have encountered lately.
A user called reporting that all his links had disappeared. A quick investigation revealed that in the target module the inlink indicators were visible, but the source did not show any outlink indicators. Opening the object properties either of source or target made the inlink indicators disappear too.
But: history of source objects showed creation of links. That is how I was able to recreate the links.
Now two days later the user calls again telling that the links have disappeared again.
Frustrating.

Re: Link by Attribute - Target to Source
kabr - Tue Mar 31 04:07:16 EDT 2009

ah, forgot to mention: v 8.3.0.2

Re: Link by Attribute - Target to Source
the@dmin - Tue Mar 31 09:06:07 EDT 2009

kabr - Tue Mar 31 04:06:25 EDT 2009
This is exactly the problem that we have encountered lately.
A user called reporting that all his links had disappeared. A quick investigation revealed that in the target module the inlink indicators were visible, but the source did not show any outlink indicators. Opening the object properties either of source or target made the inlink indicators disappear too.
But: history of source objects showed creation of links. That is how I was able to recreate the links.
Now two days later the user calls again telling that the links have disappeared again.
Frustrating.

We were using version 8.3 but recently upgraded to 9.1. I will do some testing to see if this is still an issue.

kabr - did you gather all the history information manually, or did you write a script to automate this reporting?

Re: Link by Attribute - Target to Source
llandale - Tue Mar 31 11:39:51 EDT 2009

Not sure what you are saying, but the following might help.

[1] There was an old v5.2 bug where links were 'invisible' in the target module but were visible in the source. The solution was to write a dxl to loop through all source objects and loop through all outgoing links. Simply accessing the links in the Source made them visible again in the Target.

Looking closer at that old code, I see that I opened the source Edit, got the handle of the target module of each and every link, and opened it Edit as well, and then got the handle of the target object. The code didn't actually change anything, but opening 'edit' and then force 'saving' seems to be required. Wrap this code in a big loop that plows through all the modules in a Project.

Code hasn't been used in years since the symptom has not surfaced.

[2] There is a problem with creating a link in an Edit module, and then forgetting to save that source module before closing it. IIRC from v5 days, the 'unSaved' command incorrectly says the module doesn't need saving. IIRC, the links are seen for a while in the Target module.

[3] There may be a problem with failing to save the Link Module after you create a link set therein.

[4] I have a nagging bad memory of access problems to link modules; something weird like you can create a link in a link module with RC access, but it really requires RM access to save it OK.

[5] I have a long time nagging memory of the Link-By-Attribute GUI where you change the desired direction of the links, but the background code fails to swap the default link module to correspond. That is, it figures out the default link module for the source-to-target, but when you switch directions it uses the original source-to-target link module, failing to recalculate for the new default link module. That conflicts with the linkset pairings for the target.

BINGO, I knew if I babbled I'd come up with it.

>Louie

Re: Link by Attribute - Target to Source
kabr - Wed Apr 01 08:24:14 EDT 2009

@ the@dmin: I went through the module's history manually, object by object

@ llandale: [1] for me it is the other way round: inlinks are visible (until object properties are opened), outlinks are not
[2] not here: (re)created the links, pressed the save button. next day outlinks have disappeared
[3] no, link module has not been touched
[4] as admin I have RMCDA on link modules
[5] our links were not created via Link-by-Attribute but manually

Support seems to be clueless. they offered their link-repair tool, which removes stale links (afaik).

Karl

Re: Link by Attribute - Target to Source
the@dmin - Wed Apr 01 09:12:13 EDT 2009

kabr - Wed Apr 01 08:24:14 EDT 2009
@ the@dmin: I went through the module's history manually, object by object

@ llandale: [1] for me it is the other way round: inlinks are visible (until object properties are opened), outlinks are not
[2] not here: (re)created the links, pressed the save button. next day outlinks have disappeared
[3] no, link module has not been touched
[4] as admin I have RMCDA on link modules
[5] our links were not created via Link-by-Attribute but manually

Support seems to be clueless. they offered their link-repair tool, which removes stale links (afaik).

Karl

My issue was the same as Karl's...in-link indicators, not out-link indicators.

Support gave me the same solution as Karl...a tool to delete the links. I keep telling them that is not what I intend to do, but they keep posing that as the solution. They even mentioned said, and I quote, "this is how the application is designed and once a link is deleted it cannot be restored". Unfortunately, they do not understand the actual issue and refuse to open their minds to any sort of intelligence.

The latest update is that I have requested a script to report the history of created links for modules. At least I can get the info in a spreadsheet and work it from there.

Corey

Re: Link by Attribute - Target to Source
llandale - Wed Apr 01 14:41:29 EDT 2009

Don't know if this will help, but you can plow through all your links and try to print as much information as you can. The attached file features interface script 'fGetLinkInfo' which gets as much info about the link as possible. If it returns false yet the return object is not null, then that object is deleted. The function presumes all the other linked modules are already open.

Perhaps you can add code to open all the other modules, then run a loop on all your links using this function, printing as much information as you can; perhaps:

bool IsGood = fGetLinkInfo(lnk, cl_DoInLinks, NameOther, NameLM, oLinked)
print IsGood "\t<">\t<">\t"
if (!null oLinked) "" print (identifier(oLinked)) ""
print "\n"

I suppose its remotely possible you'll get enough information about the 'missing' links to figure out what's really going on.

>Louie
Attachments

attachment_14236398_fGetLinkInfo_Temp.dxl